package context

import (
	"ksd-social-api/commons/lib"
	"time"
)

/**
 * @author feige
 * @date 2023-10-08
 * @version 1.0
 * @desc 下载浏览数记录
 */
type ChannelUpdateContext struct {
	Id       lib.BigInt `json:"id"`
	Field    string     `json:"field"`
	Value    any        `json:"value"`
	SystemId uint64     `json:"systemId"`
}

/*
- @author feige
- @date 2023-10-13
- @version 1.0
- @desc 搜索上下文
*/
type ChannelSearchContext struct {
	PageNo   int64  `json:"pageNo"`   // 分页
	PageSize int64  `json:"pageSize"` // 每页显示
	Keyword  string `json:"keyword"`  // 搜索关键词
	SystemId uint64 `json:"systemId"` // 系统编号
	Status   int64  `json:"status"`   // 上架状态
}

type ChannelContext struct {
	// 课程评论主键 -- 忽略使用omitempty
	Id          lib.BigInt `json:"id"`          // 业务主键
	Title       string     `json:"title"`       // 栏目名称
	Description string     `json:"description"` // 描述
	Icon        string     `json:"icon"`        // 图标
	Url         string     `json:"url"`         // 访问路径
	Sorted      int        `json:"sorted"`
	ParentId    uint64     `json:"parentId"` // 父Id
	HotFlag     int        `json:"hotFlag"`
	NewFlag     int        `json:"newFlag"`
	BuyFlag     int        `json:"buyFlag"`
	SystemId    uint64     `json:"systemId"`   // 系统编号
	SystemName  string     `json:"systemName"` // 系统名称
	Price       string     `json:"price"`
}

type ChannelCodeContext struct {
	Id         string     `json:"id"`         // 业务主键
	Code       string     `json:"code"`       //兑换码
	Mark       int        `json:"mark"`       //是否兑换
	Opid       lib.BigInt `json:"opid"`       //下载
	SystemId   uint64     `json:"systemId"`   // 系统ID
	SystemName string     `json:"systemName"` // 系统名称
	CreateTime time.Time  `json:"createTime"` // 创建时间
	UpdateTime time.Time  `json:"updateTime"` // 更新时间
}

/*
- @author feige
- @date 2023-10-13
- @version 1.0
- @desc 搜索上下文
*/
type CodeSearchContext struct {
	PageNo   int64  `json:"pageNo"`   // 分页
	PageSize int64  `json:"pageSize"` // 每页显示
	Mark     int    `json:"mark"`     // 搜索关键词
	Keyword  string `json:"keyword"`  // 搜索关键词
	SystemId uint64 `json:"systemId"` // 系统编号
}

/*
- @author feige
- @date 2023-10-13
- @version 1.0
- @desc 搜索上下文
*/
type BatchUsersContext struct {
	Uuid       string     `json:"uuid"`
	Opid       lib.BigInt `json:"opid"`
	SystemId   uint64     `json:"systemId"`   // 系统编号
	SystemName string     `json:"systemName"` // 系统名称
}
